package cn.com.guage.dtm.design.pattern.singleton;

/**
 * 1. 改进：通过 synchronized 保证线程安全。
 * 2. 缺点：每次调用都加锁，性能开销大。
 */
public class 单例模式_懒汉模式_同步模式_线程安全 {
    public static void main(String[] args) {
        LazySingletonSafe.getInstance().showMessage();
    }
}

class LazySingletonSafe{
    private static LazySingletonSafe instance;
    private LazySingletonSafe() {}
    public static synchronized LazySingletonSafe  getInstance(){
        if(instance == null){
            instance = new LazySingletonSafe();
        }
        return instance;
    }
    public void showMessage() {
        System.out.println("单例模式_懒汉模式_同步模式_线程安全");
    }
}
